<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Sends a request to execute a prepared statement with given parameters, and waits for the result.</title>

 </head>
 <body><div class="manualnavbar" style="text-align: center;">
 <div class="prev" style="text-align: left; float: left;"><a href="function.pg-escape-string.html">pg_escape_string</a></div>
 <div class="next" style="text-align: right; float: right;"><a href="function.pg-fetch-all-columns.html">pg_fetch_all_columns</a></div>
 <div class="up"><a href="ref.pgsql.html">PostgreSQL 函数</a></div>
 <div class="home"><a href="index.html">PHP Manual</a></div>
</div><hr /><div id="function.pg-execute" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">pg_execute</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.1.0)</p><p class="refpurpose"><span class="refname">pg_execute</span> &mdash; <span class="dc-title">Sends a request to execute a prepared statement with given parameters, and waits for the result.</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.pg-execute-description">
  <h3 class="title">说明</h3>
  <div class="methodsynopsis dc-description">
   <span class="type">resource</span> <span class="methodname"><strong>pg_execute</strong></span>
    ([ <span class="methodparam"><span class="type">resource</span> <code class="parameter">$connection</code></span>
   ], <span class="methodparam"><span class="type">string</span> <code class="parameter">$stmtname</code></span>
   , <span class="methodparam"><span class="type">array</span> <code class="parameter">$params</code></span>
   )</div>

  <p class="para rdfs-comment">
    Sends a request to execute a prepared statement with given parameters, and 
    waits for the result.
  </p>
  <p class="para">
    <span class="function"><strong>pg_execute()</strong></span> is like <span class="function"><a href="function.pg-query-params.html" class="function">pg_query_params()</a></span>, 
    but the command to be executed is 
    specified by naming a previously-prepared statement, instead of giving a 
    query string. This feature allows commands that will be used repeatedly to 
    be parsed and planned just once, rather than each time they are executed. 
    The statement must have been prepared previously in the current session. 
    <span class="function"><strong>pg_execute()</strong></span> is supported only against PostgreSQL 7.4 or
    higher connections; it will fail when using earlier versions.
  </p>
  <p class="para">
    The parameters are identical to <span class="function"><a href="function.pg-query-params.html" class="function">pg_query_params()</a></span>, except that the name of a 
    prepared statement is given instead of a query string.
  </p>
 </div>


<div class="refsect1 parameters" id="refsect1-function.pg-execute-parameters">
  <h3 class="title">参数</h3>
  <p class="para">
   <dl>

    
     <dt>
<em><code class="parameter">connection</code></em></dt>

     <dd>

      <p class="para">
       PostgreSQL database connection resource.  When 
       <em><code class="parameter">connection</code></em> is not present, the default connection 
       is used. The default connection is the last connection made by 
       <span class="function"><a href="function.pg-connect.html" class="function">pg_connect()</a></span> or <span class="function"><a href="function.pg-pconnect.html" class="function">pg_pconnect()</a></span>.
      </p>
     </dd>

    
    
     <dt>
<em><code class="parameter">stmtname</code></em></dt>

     <dd>

      <p class="para">
       The name of the prepared statement to execute.  if
       &quot;&quot; is specified, then the unnamed statement is executed.  The name must have
       been previously prepared using <span class="function"><a href="function.pg-prepare.html" class="function">pg_prepare()</a></span>, 
       <span class="function"><a href="function.pg-send-prepare.html" class="function">pg_send_prepare()</a></span> or a <em>PREPARE</em> SQL
       command.
      </p>
     </dd>

    
    
     <dt>
<em><code class="parameter">params</code></em></dt>

     <dd>

      <p class="para">
        An array of parameter values to substitute for the $1, $2, etc. placeholders
        in the original prepared query string.  The number of elements in the array
        must match the number of placeholders.
      </p>
      <div class="warning"><strong class="warning">Warning</strong>
       <p class="para">
        Elements are converted to strings by calling this function.
       </p>
      </div>
     </dd>

    
   </dl>

  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.pg-execute-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="para">
    A query result resource on success 或者在失败时返回 <strong><code>FALSE</code></strong>.</p>
 </div>

 
 <div class="refsect1 examples" id="refsect1-function.pg-execute-examples">
  <h3 class="title">范例</h3>
  <p class="para">
   <div class="example" id="example-2028">
    <p><strong>Example #1 Using <span class="function"><strong>pg_execute()</strong></span></strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">//&nbsp;Connect&nbsp;to&nbsp;a&nbsp;database&nbsp;named&nbsp;"mary"<br /></span><span style="color: #0000BB">$dbconn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">pg_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">"dbname=mary"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;Prepare&nbsp;a&nbsp;query&nbsp;for&nbsp;execution<br /></span><span style="color: #0000BB">$result&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">pg_prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"my_query"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'SELECT&nbsp;*&nbsp;FROM&nbsp;shops&nbsp;WHERE&nbsp;name&nbsp;=&nbsp;$1'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;Execute&nbsp;the&nbsp;prepared&nbsp;query.&nbsp;&nbsp;Note&nbsp;that&nbsp;it&nbsp;is&nbsp;not&nbsp;necessary&nbsp;to&nbsp;escape<br />//&nbsp;the&nbsp;string&nbsp;"Joe's&nbsp;Widgets"&nbsp;in&nbsp;any&nbsp;way<br /></span><span style="color: #0000BB">$result&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">pg_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"my_query"</span><span style="color: #007700">,&nbsp;array(</span><span style="color: #DD0000">"Joe's&nbsp;Widgets"</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">//&nbsp;Execute&nbsp;the&nbsp;same&nbsp;prepared&nbsp;query,&nbsp;this&nbsp;time&nbsp;with&nbsp;a&nbsp;different&nbsp;parameter<br /></span><span style="color: #0000BB">$result&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">pg_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbconn</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"my_query"</span><span style="color: #007700">,&nbsp;array(</span><span style="color: #DD0000">"Clothes&nbsp;Clothes&nbsp;Clothes"</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
    </div>

   </div>
  </p>
 </div>

 
 <div class="refsect1 seealso" id="refsect1-function.pg-execute-seealso">
  <h3 class="title">参见</h3>
  <p class="para">
   <ul class="simplelist">
    <li class="member"><span class="function"><a href="function.pg-prepare.html" class="function" rel="rdfs-seeAlso">pg_prepare()</a> - Submits a request to create a prepared statement with the 
  given parameters, and waits for completion.</span></li>
    <li class="member"><span class="function"><a href="function.pg-send-prepare.html" class="function" rel="rdfs-seeAlso">pg_send_prepare()</a> - Sends a request to create a prepared statement with the given parameters, without waiting for completion.</span></li>
    <li class="member"><span class="function"><a href="function.pg-query-params.html" class="function" rel="rdfs-seeAlso">pg_query_params()</a> - Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.</span></li>
   </ul>
  </p>
 </div>

</div><hr /><div class="manualnavbar" style="text-align: center;">
 <div class="prev" style="text-align: left; float: left;"><a href="function.pg-escape-string.html">pg_escape_string</a></div>
 <div class="next" style="text-align: right; float: right;"><a href="function.pg-fetch-all-columns.html">pg_fetch_all_columns</a></div>
 <div class="up"><a href="ref.pgsql.html">PostgreSQL 函数</a></div>
 <div class="home"><a href="index.html">PHP Manual</a></div>
</div></body></html>
